The scope of the global communications capacity, comprising fixed link and wireless networks, continues to expand rapidly. The variety and complexity of communication devices proliferates and the number of users escalates. As a result, users are faced with increasingly complex systems and interfaces with which to manage multiple sources of information. At the same time, society has increased its demands on time and productivity so that users no longer have the luxury of focusing their attention on a single source of information or means of communication. Instead, the norm today is for people to carry out many tasks simultaneously.
As might be expected, these demands have exposed substantial problems in current communications technology. In particular, users are faced with insufficient resources to manage and access the volume and variety of information available to them in an efficient and productive manner. While a variety of tools designed to assist in accessing and managing these resources have been created, these tools remain unsatisfactory. Consequently, users are impeded by the myriad of information sources, each with its own method of use and often with its own login and password requirements, as well as by slow retrieval times to access the information. The result is an unacceptable delay for many operations, as well as inefficiencies in transferring information from one source to another.
Under the present art, for example, it is usually the case that a user lacks the bandwidth resources to receive multiple video signals simultaneously. If an individual were receiving one video signal, it is usually impractical to receive a second at the same time due to bandwidth constraints. Thus, the user could not, for example, monitor multiple video data streams of sporting or news events; instead, the user could monitor only one video data stream at a time.
To address such bandwidth resource limitations, the current art only accesses information when the user requests it. As a result, there is an inevitable delay between the user's request for information and the communications device's presentation of it. For example, if a user wants to monitor sources of news information on the Internet using current browser technology, the user must continuously and manually request the news data from its source to determine whether the data has been updated. Prior to requesting and subsequently receiving the data, the user has no way of knowing whether the data has been updated. In any case, the user is unlikely to want to refresh the status of each application by manual intervention himself at the frequency necessary to ensure that the information is up to date. Additionally, if a user wishes to view two or more webpages simultaneously, (s)he must run two or more copies of the web-browser program. The act of manually refreshing the content of alternate programs in order to ascertain which have any new material to offer is fundamentally inefficient.
Similarly, the user's access to such data is not in real-time or even near real-time because each time the user wants to view the information, (s)he must request it from its source and wait for the source to transmit it to him. Thereafter, (s)he must wait until his/her communications device has received and processed the information before it is presented. For complex information such as a video signal, this can take longer than a minute to occur, and, even for simple information, this process can take many seconds. Thus, the user is denied real-time or near real-time access to the information.
Present technology that locally stores or “caches” previously accessed information to make it available to the user more rapidly does not solve this problem, because the cached information is necessarily old. The user's communications device must still verify the accuracy of the information with the source before the system displays the cached information. As a result, the user is denied real-time or near real-time access to updated information.
Similarly, if a user wishes to make two or more simultaneous downloads there is no control over the relative rates at which the respective downloads would occur. So-called “push technologies” attempt to address this problem by organizing information from a number of related sources and sending it periodically to a user. While this arrangement frees a user from actively participating in the download, the price is that the user has little control over the organization of the information and can only practically handle a small number of such transmissions at any one time. Each transmission is subject to the bandwidth available.
Of course, not all tasks require the same allocation of resources and, correspondingly, not all tasks have equal priorities for a given user. In particular, a user may wish to customize the information environment in such a way that many processes are occurring synchronously, yet each is communicating with the user at a rate that is acceptable. For example, a television viewer may wish to know what is being broadcast on several channels at the same time but only care to watch one of them closely. An Internet user may wish to be continually in touch with sources of data from audio, video, chat-room, video-conferencing and e-mail checker utilities, but not wish all of them to update at the same frequency; the user would be satisfied merely to see at a glance a recent status of each. Some of these processes, such as chat-room activities entail very little data transmission and can, indeed, be effectively updated on a continuous basis, whereas others require a great deal of bandwidth but could usefully be sampled at a lower rate. The current art lacks any technology for controlling the respective refresh rates of several simultaneous information sources. Furthermore, the current art lacks technology that can automatically design an appropriate refresh rate based on the type of data that is received.
At the same time that users are limited by system resources, they are also finding that they have no effective way of managing the multiplicity of available data types and information sources. It is difficult both to conduct two or more different types of computing activities at the same time or to monitor two or more different information sources simultaneously because the tools available are confusing, inflexible, and/or otherwise difficult to implement. Users require immediate access to a wide variety of up to date content presented in a flexible, easily customized interface.
In addition to restrictions in the capacity of today's networks, there is very little conformity amongst the information content. A typical communication device, such as a personal computer, television or mobile telephone, comprises a display unit connected to a processing unit that can accept information from many different sources. As described above, the signals, data and/or datastreams that are available to such a device are diverse, including, for example, HTML content, e-mail, or streaming audio and video. Correspondingly, the software tools that interpret and process the different information sources present each in a different way to the user. From a user's perspective, distinctions between the different types of information could usefully be removed so that each is viewed in a similar way and such that the current presentation associated with any information source gives an immediate indication of its current content. The present reality is different, however. The user must contend with a wide range of icons and program windows that may occupy space on a user's display screen. Another lack of conformity is the different mode of behavior for programs that address different types of information. An effort to standardize the ways in which different types of information are presented to the user would be advantageous. Equally, unification of the way in which those types of information are managed would save time and increase user productivity, for productivity is reduced when users must cope with different attributes of different programs and learn distinct paradigms for different types of information. And, furthermore, a way of conforming the way in which information about multiple datastreams can be communicated between users would be desirable.
The nature of the application program windows and their respective icons predominantly found on today's computer displays is restrictive. The application window typically displays the current content or output of only a single program and program icons convey nothing of the program's current state or content. Often, an icon is a static image which is merely characteristic of the program or data represented thereby rather than the program's current state or its information content. In the present art, there is no intermediate between a window or an icon.
Thus, while a window may be resized as appropriate, it will frequently occupy the full display area, effectively limiting the user to a view of a single program. It may have active areas around its borders, such as menu bars, scroll bars, or tool bars, designed to allow the user to control aspects of the window's appearance or to set parameters specific to the operation of the program controlling it. Icons, in contrast, offer ease of display when multiple programs are active, but they do not permit viewing or control of the underlying program or data represented thereby. Instead, icons require user intervention, typically in the form of a mouse-click on an icon of interest, to view or control the program or information. Consequently, the user's viewing options are limited to a choice between one presenting very limited information about a multitude of programs and information and one presenting full information, but of only a single program or data source.
The fact that the GUI's of the present art are largely restricted to icons and windows diminishes the capacity to organize, manage, and access available information. With the Internet representing an ever expanding view of currently accessible global information, the need for flexible information management tools has become crucial. Similarly, with the current expansion of television programming available, for example, through cable television and satellite broadcasting, the need to manage this audiovisual content becomes acute. The convergence of television programming and computers increases these management needs all the more.
Current computer operating system software utilizes bookmarking schemes for managing Internet locations and complex database technologies for managing specialist information. Neither provides visual immediacy or ease of layout. Bookmark hierarchies are presented as cascading textual menus, and database technologies arrange information into rigidly defined structures. The missing capability is a visual categorization in which an area of the display unit itself becomes the bookmark and the arrangement on the display becomes the categorization, independent of the type of content.
While the most common way of accessing information sources is via a personal computer, present day technology exists to communicate via a television or set-top box, handheld computing device, mobile and cellular telephones, all manner of “hybrid” devices such as an internet-accessible games player, camera phones, the “Blackberry”, or even in-car navigation and security systems, in which case Internet content and other data can be displayed as some portion of the screen. There is a growing convergence of technologies: televisions are beginning to find application as viewers of non-television data, (for example through use of “Vertical Blanking Interval” technology in which a signal is inserted into the main video signal or through set-top boxes providing limited computer and communications functionality); computers are already finding application for the display of movies, real-time data streams, and the playing of audio data; handheld computing devices and mobile telephones can also access the Internet and other information sources; and other devices are becoming able to access a variety of signals, e.g., digital signals from satellites such as digital radio broadcasts.
To summarize the current state of the art, display technologies currently lack an interface which is capable of organizing any type of information, and presenting such information to the user in a consistent manner, in such a way that all currently open channels are able to indicate their activity on a continual basis, and which could run on any device. Furthermore the current art is deficient in respect of organizing multiple sources of information in a relevant manner that takes into account relationships between the various sources.